home *** CD-ROM | disk | FTP | other *** search
/ Chip 1996 April / CHIP 1996 aprilis (CD06).zip / CHIP_CD06.ISO / hypertxt.arj / 9406 / UC20.CD < prev    next >
Text File  |  1994-11-27  |  15KB  |  247 lines

  1.           @VUltra Compressor 2-vel (UC2)@N
  2.  
  3.           @VDunsztolás felsôfokon@N
  4.  
  5.           A   tömörítés  sokaknak  iszonytatóan  misztikus  és  ködös:
  6.           valami  olyasmi,  ami  nem  az egyszerû felhasználónak való.
  7.           Pedig  a  dolog  nagyon  egyszerû,  és  a  Stacker (valamint
  8.           koppintásai) megjelenése óta teljesen automatikus is.
  9.  
  10.  
  11.  
  12.  
  13.           A  tömörítés  lényege  az, hogy valamilyen módon a tárolandó
  14.           anyagot   tömörebb,   s   ezáltal  kevesebb  helyet  foglaló
  15.           formában    tároljuk.   Vegyük   sorra   a   legelterjedtebb
  16.           tömörítési metódusokat, algoritmusokat!
  17.  
  18.           A    legegyszerûbb   tömörítés   során   az   ismétlôdéseket
  19.           rövidítjük.  Például  a  ""Szia Pista! Szia!" jellegû szöveg
  20.           jóval  tömörebb  lesz  ezzel  a  módszerrel.  A tömörség itt
  21.           nyilván  attól  függ, milyen messzire nézünk -- azaz mekkora
  22.           távolság  lehet  két  azonos  kódsor között. Azonkívül az is
  23.           számít  még,  hogy  milyen  hosszú sorozatokat ismerünk fel.
  24.           Természetesen  minél messzebbre nézünk, annál több memóriára
  25.           lesz  szükség,  és  annál  lassúbb lesz a program futása is.
  26.           Ugyanez  áll  a  nagyon  hosszú  sorozatokra. Ezt a módszert
  27.           kétféleképpen  fogalmazták  meg  a matematikusok. Az elsô az
  28.           úgynevezett   futásidejû   tömörítés,   a  második  pedig  a
  29.           Lempel-Ziv   módszer.   A   futásidejû   tömörítés   csak  a
  30.           közvetlenül  egymás után található ismétlôdésekkel boldogul,
  31.           a    Lempel-Ziv   viszont   megvalósítástól   függôen   nagy
  32.           távolságokról   is   észreveszi  az  ismétlôdéseket.  Míg  a
  33.           futásidejû   tömörítést   ma  már  senki  nem  használja,  a
  34.           Lempel-Ziv algoritmus része szinte az összes tömörítônek.
  35.  
  36.           A  gyakran  elôforduló  byte-okat  rövidebben,  a  ritkábban
  37.           elôforduló  kódokat hosszabban tárolhatjuk. Például a magyar
  38.           nyelvû  szövegek nagyon jól tömöríthetôk, ha az ""a"-t és az
  39.           ""e"-t  a lehetô legrövidebb módon tároljuk, míg a ""w" betû
  40.           kódja  akár  nagyon  hosszú  is  lehet.  Az igen terjedelmes
  41.           kódszótárt  --  melyik  kód  helyett  mi  áll  -- is le kell
  42.           tárolni,  ezért jobb nagyobb blokkokat beolvasni, de ekkor a
  43.           sebességünk   csökken.   Ezt  a  módszer  Huffman-kódolásnak
  44.           nevezik.
  45.  
  46.           Létezik   olyan   módszer,  ami  elsôsorban  olyan  adatokon
  47.           alkalmazható,  mint  például  egy  hatalmas névsor. Ebben az
  48.           esetben  az  egymás  után  következô  adatok  között kevés a
  49.           különbség.  îgy  csak  a  különbségeket  kell  tárolni.  Ezt
  50.           különbségi  tömörítésnek  nevezik.  Itt  a  tömörítés szinte
  51.           csak  a tömörítendô szövegtôl függ -- de sajnos ez a módszer
  52.           igen  ritkán  használható,  mivel  programjaink  és adataink
  53.           általában nem ilyenek.
  54.  
  55.           A  programok  súgói  is jól tömöríthetôk. Mivel tudjuk, hogy
  56.           mely   szavak   fordulnak  elô  benne  sokszor,  úgynevezett
  57.           tokeneket  írunk  helyettük.  Például  ezt  a  cikket sokkal
  58.           rövidebben  lehetne tárolni, ha a ""tömörít" betûhalmazt egy
  59.           @@   szimbólummal  helyettesítenénk.  Ennek  a  módszernek  a
  60.           hatékonysága  annál  jobb, minél nagyobb file-ra használjuk,
  61.           és  abban  minél több az ismétlés. Például a file szó szinte
  62.           minden  súgóban  rengetegszer  fordul  elô, s ha ezt mondjuk
  63.           egy   @@   jellel  helyettesítjük,  nagyon  hatékony  lesz  a
  64.           tömörítés. Ezt a módszert tokenizálásnak nevezzük.
  65.  
  66.           Az  aritmetikai  kódolás a matematikailag lehetséges legjobb
  67.           kódolás.   A  lényege,  hogy  minden  byte-ot  annyi  bittel
  68.           helyettesítsünk,  mint  amennyi annak az információtartalma.
  69.           Gyakorlati  jelentôsége  a  szörnyû lassúság miatt kicsi, de
  70.           elméleti  jelentôsége nagyon nagy, mivel tudjuk, mi a határa
  71.           a tömörítésnek.
  72.  
  73.           A  jobb  tömörítôk  természetesen  több  tömörítési eljárást
  74.           ötvöznek.  A legtöbb, ma használatos file-tömörítô egy japán
  75.           programozó,  Haruhiko  Okumura  mûvét,  az  AR002  programot
  76.           veszi    alapul.    Ez    a   Lempel-Ziv   módszert   és   a
  77.           Huffmann-módszert  kombinálja.  Az  ARJ, az LHA, a PKZIP nem
  78.           véletlenül   ér  el  nagyon  hasonló  tömörítési  átlagokat,
  79.           hiszen  ezek  mind  ennek  a  programnak  a  leszármazottai.
  80.           Elsôsorban  inkább  a sebesség és a különféle szolgáltatások
  81.           döntenek  a programok között. A programok legelterjedtebb és
  82.           legmegbízhatóbb  verziói:  ARJ  2.30, PKZIP 2.04g, LHA 2.13.
  83.           Egy   negyedik   AR002  alapú  tömörítô,  a  ZOO  (2.10)  is
  84.           elterjedt, de messze nem ennyire.
  85.  
  86.           Az  ARJ  rengeteg szolgáltatást nyújt: többek között igen jó
  87.           szeletelést    és    a    programjaink,   irományaink   több
  88.           generációjának  tárolását. A szeletelés azt jelenti, hogy ha
  89.           valamilyen  nagyobb anyagot lemezre archiválunk, akkor képes
  90.           a  következô  lemezen folytatni a tömörítést. Ebben az ARJ a
  91.           nyerô:    winchesteren    elkészíthetjük,    tárolhatjuk   a
  92.           szeleteket.  A PKZIP szeletelésétôl viszont óvunk mindenkit!
  93.           Igen  ám,  de a PKZIP a leggyorsabb az említett három közül,
  94.           és  ez nagyon erôs érv mellette. Az LHA-nak különlegessége a
  95.           kibontás   után   azonnal  induló  batch-file.  Mindenképpen
  96.           javasolt    mindhárom    program    evidenciában    tartása.
  97.           Használatukra  leginkább  az javasolható, hogy legtöbbször a
  98.           PKZIP-pel  tömörítsünk,  ha  feltehetôen  kifér az anyag egy
  99.           lemezre  (2-3 Mbyte eredeti méretig), illetve az ARJ-vel, ha
  100.           szeletelni kell.
  101.  
  102.           Egy  új holland tömörítôvel, az Ultra Compressor 2-vel (UC2)
  103.           ismerkedhettünk  meg ez év elején. Az program 1-es verzióját
  104.           Hollandián  kívül  nem  nagyon ismerték, sôt még ott is csak
  105.           kevesen.   Az  új  verzió  azonban  különleges  újdonságokat
  106.           tartalmaz,  és  elég  gyorsan elterjedt Interneten keresztül
  107.           --  akik  kíváncsiak  voltak  rá,  egyenesen az elektronikus
  108.           postaládájukba kapták a programot.
  109.  
  110.           A  program legnagyobb újdonsága a ""Neuro Manager". Ez elôre
  111.           megvizsgálja  a  file-okat, és igyekszik valamilyen elôzetes
  112.           képet  adni  róluk:  például  a  *.DOC file-ok tömörítésekor
  113.           elôre   tudja,   hogy   ezek  szövegfile-ok,  milyen  szavak
  114.           szerepelnek  mindegyikben  stb.  Ez nagy újdonság azok után,
  115.           hogy  a  jelenlegi  tömörítôk  blokkonként  olvasnak, és nem
  116.           tudnak  semmit  a  következôrôl.  Pedig  lehetséges,  hogy a
  117.           Huffman   kódtáblát   nem   kéne  kétszer  tárolni,  mert  a
  118.           következô  blokk is hasonló stb. Az UC ráadásul elôre ismeri
  119.           a  programozási és az élô nyelvekben elôforduló leggyakoribb
  120.           szavakat  --  ez  is  nagy  elôny  tud  lenni  szövegfile-ok
  121.           tömörítésekor.  A  Lempel-Ziv  rész körülbelül kétszer olyan
  122.           messzire  lát  el,  és  sokkal  hosszabb azonosságokat ismer
  123.           fel,  mint  az eddigi tömörítôk. Sajnos emiatt a program nem
  124.           a sebesség bajnoka, de annál inkább a tömörségé.
  125.  
  126.           A   program   különlegessége   még   az  hibajavító  kódolás
  127.           alkalmazása.  Ez  olyan  speciális  kódolás,  amely lehetôvé
  128.           teszi,  hogy ha néhány byte megsérül, a file helyreállítható
  129.           legyen.  Ez  persze  hosszabbá  teszi  a  file-t  (mintegy 1
  130.           százalékkal), de mindenképpen megéri, mert az apróbb hibákat
  131.           ezzel   el   tudjuk   hárítani.  Próbaképpen  egy  1400  k-s
  132.           állomány   egy  teljes  szektorát  felülírtuk.  Az  UC2  kis
  133.           vacilálás  után  kijavította a hibát! A backup programok már
  134.           régóta  alkalmaznak  ilyen  megoldásokat.  Nincsenek annyira
  135.           elterjedve  --  fôleg  azért,  mert ami valamilyen backuppal
  136.           lett  mentve,  az  oda  van  ""drótozva":  nem  lehet vinyón
  137.           tárolni.  Ráadásul a backup programok messze nem tömörítenek
  138.           annyira jól.
  139.  
  140.           Az  UC másik nagy újdonsága az, ahogyan egy cikknek vagy egy
  141.           program  forrásszövegének  több verzióját tárolja. Ha ezeket
  142.           normálisan   becsomagoljuk,   akkor   nagy  különbséget  nem
  143.           találunk.  De  egy  külön  opcióval optimalizálás kérhetô --
  144.           ekkor   döbbenetes   módon   kicsi  lesz  az  újabb  verziók
  145.           helyigénye.  A  dolog hátterében a különbségi tömörítés áll.
  146.           Logikus   ilyen   helyen  való  alkalmazása,  de  az  eddigi
  147.           szemlélet,  ami  a  file-ok között semmilyen kapcsolatot nem
  148.           alakított ki, nem tette lehetôvé ezt a trükköt.
  149.  
  150.           Különleges  csemegeként  nemcsak szöveg, hanem kép vagy zene
  151.           is  lehet  a  megjegyzés  egy UC2 file-ban. Persze nem az UC
  152.           nézi/játssza  le  ezeket  a  file-okat, hanem egy batch file
  153.           hívja  a  megfelelô programot (GIF-nézô, MOD lejátszó stb.).
  154.           A  program  felhasználását könnyíti az is, hogy futtatásához
  155.           meglepôen  kevés  memória  is  elegendô  --  megfelelô módon
  156.           indítva  akár  32 Kbyte szabad RAM-nál is elindul. Valójában
  157.           a  sok  helyet foglaló programot kiteszi a tárból. Ezt eddig
  158.           is  jónéhány programcsomag (például Shell Room) segítségével
  159.           meg  lehetett  tenni,  de  nem tették bele magába a tömörítô
  160.           csomagba.
  161.  
  162.           A  súgót  nagyon  kulturált módon oldották meg: a programban
  163.           magában  nincsen  súgó,  de  van benne egy szövegnézô, ami a
  164.           különbözô   dokumentációkat   jeleníti   meg.  Természetesen
  165.           elôre-hátra    mozoghatunk    a    doksikban,    az   elején
  166.           kiválaszthatjuk,  mely  fejezetre  vagyunk  kíváncsiak  stb.
  167.           Néha  azért  hiányzik  az  egyoldalas,  tömör  emlékeztetô a
  168.           szintaxisról.  Sokkal  jobb lenne, ha az UC paraméter nélkül
  169.           indítva  egy  tömör help-et adna, és csak kifejezett kérésre
  170.           állna elô az egyebekkel.
  171.  
  172.           Az  UC2  password  védelme  igen  erôs,  de külön programban
  173.           érkezik.  Nem  igazán  látom  értelmét ennek. Matematikailag
  174.           tényleg  sokkal  nehezebb  feltörni az UC jelszóvédelmét, de
  175.           az  eddigi  (PKZIP,  ARJ)  védelmeket is csak próbálgatással
  176.           lehetett törni.
  177.  
  178.           Mind   a   PKZIP,   mind   az   ARJ  megadja  a  regisztrált
  179.           felhasználóknak     a    lehetôséget,    hogy    programjaik
  180.           eredetiségét   bizonyítsák   egy   biztonsági  vagy  eredeti
  181.           boríték      segítségével.      Azonban     a     nemzetközi
  182.           cracker-társadalom  kissé  megfúrta  az ötletet: léteznek AV
  183.           törôk,  amelyek  bárki számára lehetôvé teszik, hogy például
  184.           Mcafee  nevében  csomagoljon  be  valamit. Az UC szerzôi ezt
  185.           elkerülendô   egyrészt  csak  a  regisztrált  felhasználónak
  186.           adják  ki  azt  a  programot,  ami  ezt a borítékot -- az UC
  187.           terminológiája  szerint  pecsétet  --  készíti.  (Eddig ez a
  188.           programok   szerves   része   volt.)   Másrészt  egy  nagyon
  189.           biztonságos   algoritmust   választottak   a   kódolásra.  A
  190.           módszer  kis  hibája  az,  hogy  maga az UC nem ellenôrzi az
  191.           archív  állományt,  van-e  rajta  pecsét,  hanem  egy  külön
  192.           program  szolgál  erre  is.  Ez  némileg  lerontja a módszer
  193.           hatásfokát, de még így is sokkal jobb, mint az eddigiek.
  194.  
  195.           A   program  hátrányai  közé  tartozik  a  merev  parancssor
  196.           struktúra:   megszokhattuk,  hogy  a  különbözô  kapcsolókat
  197.           szinte  bárhova lehet írni a parancssoron belül, itt azonban
  198.           rögzített    helyük   van.   A   program   dokumentációjával
  199.           ellentétben  a  tesztelés azt mutatja, hogy a kitömörítésben
  200.           egyáltalán nem gyors, sôt egyenesen a leglassúbb.
  201.  
  202.           Összefoglalva   azt   mondhatjuk:   az  UC  nagyon  ígéretes
  203.           fejlesztés,  és  ha  majd  szeletelni  is  tud, akkor az ARJ
  204.           nehéz  helyzetbe  kerül.  Ugyanakkor  a PKZIP-et a sebessége
  205.           miatt még sokáig nem nélkülözhetjük.
  206.  
  207.           @KNégyesi Károly@N
  208.  
  209. @<9406\UC.GIF>Az Ultra Compressor új verziója több újdonságot is tartalmaz@N
  210.  
  211. @<9406\UC2.GIF>A kulturált hasznos segédeszközünk lehet@N
  212.  
  213.  
  214.  
  215.           ┌──────────────────────────────────────────────────────────┐
  216.           │                       @Vùjdonságok@N                         │▒
  217.           │                                                          │▒
  218.           │ Az UC2  roppant ígéretesnek  tûnt már  az elsô  publikus │▒
  219.           │ megjelenésekor.   (Amikor  ezt  írom,  akkor  tartunk  a │▒
  220.           │ @Krelease  2@N  béta  változat  tesztelésénél.)  Egyre  több │▒
  221.           │ ígéret válik valóra, mert sok apró, bosszantó hiba  tûnt │▒
  222.           │ el  a  programból,  és   mire  ez  a  cikk   megjelenik, │▒
  223.           │ valószínûleg már  egy nagyon  jó szeletelési  lehetôsége │▒
  224.           │ is  lesz.   Az  érdeklôdôbbek  betettek  egy  leírást  a │▒
  225.           │ program  azon  kapcsolóiról  és  parancsairól, amelyeket │▒
  226.           │ valószínûleg csak ritkán kell használnunk.  Került  bele │▒
  227.           │ egy  egyképernyôs  összefoglaló  súgó,  tehát  most  már │▒
  228.           │ akkor is használható, ha csak az .EXE file-unk van  meg. │▒
  229.           │ Sok új opciót  kapott, például olyat,  amivel megadható, │▒
  230.           │ hogy   csak   olyan   file-ket   csomagoljon,    amelyek │▒
  231.           │ tartalmaznak  egy  adott  stringet.   Többféle  formában │▒
  232.           │ képes listafile-t kreálni.                               │▒
  233.           │                                                          │▒
  234.           │ ùj    segédeszközök    kerültek    a    csomagba:    egy │▒
  235.           │ verziómenedzser (VM) -- az  UC-nek eddig is elônye  volt │▒
  236.           │ az egy file-ból több verziót egy archívba lehetôség.   A │▒
  237.           │ VM  azonban  egészen  különleges  dolgokra  képes:   egy │▒
  238.           │ címkét ragaszthatunk a  file-ok különbözô verzióira,  és │▒
  239.           │ címke  szerint  bonthatunk  ki  (listázhatunk  etc.).  A │▒
  240.           │ címkébe  kérhetjük  az  aznapi  dátum beírását vagy azt, │▒
  241.           │ hogy  hányadik  verzió  is   ez.  A  címkékrôl   History │▒
  242.           │ (történet) kérhetô.   A másik program  az UltraExpander. │▒
  243.           │ Ez  egy  szabadon  terjeszthetô,  csak  kibontani   tudó │▒
  244.           │ program.   Az UC2  nem lesz  szabadon terjeszthetô  -- a │▒
  245.           │ program koncepciója a ""próbáld ki mielôtt megvennéd".   │▒
  246.           └──────────────────────────────────────────────────────────┘▒
  247.            ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒